package com.fmatos.amazingwallpapers.view.main;

import android.app.Activity;
import android.app.Fragment;
import android.app.WallpaperManager;
import android.content.ComponentName;
import android.content.Intent;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.Toast;

import com.fmatos.amazingwallpapers.R;
import com.fmatos.amazingwallpapers.service.alarm.AlbumAlarm;
import com.fmatos.amazingwallpapers.service.image.BitmapsServiceClient;
import com.fmatos.amazingwallpapers.view.album.AlbumActivity;
import com.fmatos.amazingwallpapers.view.albums.AlbumsActivity;
import com.fmatos.amazingwallpapers.wallpaper.service.AmazingWallpaperService;

public class MainActivity extends Activity {

    
    private static final String TAG = MainActivity.class.getSimpleName();

    @Override 
    protected void onCreate(Bundle savedInstanceState) {
    	super.onCreate(savedInstanceState);
    	setContentView(R.layout.activity_main);
    	if (savedInstanceState == null) {
    		getFragmentManager().beginTransaction().add(R.id.container, new PlaceholderFragment()).commit();
    	}
    }

	@Override
	public boolean onCreateOptionsMenu(Menu menu) {
		// Inflate the menu; this adds items to the action bar if it is present.
		getMenuInflater().inflate(R.menu.main, menu);
		return true;
	}

	
	@Override
	public boolean onOptionsItemSelected(MenuItem item) {
		// Handle action bar item clicks here. The action bar will
		// automatically handle clicks on the Home/Up button, so long
		// as you specify a parent activity in AndroidManifest.xml.
		int id = item.getItemId();
		if (id == R.id.action_settings) {
			return true;
		}
		return super.onOptionsItemSelected(item);
	}

	/**
	 * A placeholder fragment containing a simple view.
	 */
	public static class PlaceholderFragment extends Fragment {

		protected BitmapsServiceClient bitmapServiceclient;

		public PlaceholderFragment() {
		}

		
		@Override
		public View onCreateView(LayoutInflater inflater, ViewGroup container,
				Bundle savedInstanceState) {
			View rootView = inflater.inflate(R.layout.fragment_main, container, false);

			bitmapServiceclient = new BitmapsServiceClient(getActivity().getApplicationContext());

			Button mBtAlbums = (Button) rootView.findViewById(R.id.btGoToAlbums);
			mBtAlbums.setOnClickListener(new OnClickListener() {
				
				public void onClick(View v) {
					Toast.makeText(getActivity(), "Go to albums view",Toast.LENGTH_LONG).show();
					
					Intent intent = new Intent(getActivity(),AlbumsActivity.class);
					startActivity(intent);					
				}
			});
			
			Button mBtPreview = (Button) rootView.findViewById(R.id.btGoToPreviewWallpaper);
			mBtPreview.setOnClickListener(new OnClickListener() {
				
				@Override
				public void onClick(View v) {
					Toast.makeText(getActivity(), "Go to preview",Toast.LENGTH_LONG).show();
					
				    Intent intent = new Intent(WallpaperManager.ACTION_CHANGE_LIVE_WALLPAPER);
				    intent.putExtra(WallpaperManager.EXTRA_LIVE_WALLPAPER_COMPONENT,
				        new ComponentName(getActivity(), AmazingWallpaperService.class));
				    startActivity(intent);					
				}
			});
			
			
			
			Button mBtComments = (Button) rootView.findViewById(R.id.btGoToComments);
			mBtComments.setOnClickListener(new OnClickListener() {
				
				public void onClick(View v) {
					Toast.makeText(getActivity(), "Go to old album view",Toast.LENGTH_LONG).show();
					
					Intent intent = new Intent(getActivity(),AlbumActivity.class);
					startActivity(intent);					
				}
			});
			
			setUpRecurringAlarm();
			
			return rootView;
		}


		private void setUpRecurringAlarm() {

			AlbumAlarm aAlarm = new AlbumAlarm(getActivity());
			aAlarm.setRecurringTimeAlarm();
			
		}
	}
	
	

}
